package com.vogue.supplymall.account.domain.service;

import java.util.List;

import com.vogue.supplymall.account.domain.model.Address;

/**
 * Created by 崔岳 on 2018-1-10.
 */
public interface AddressService extends BaseService<Address, Long> {

	/**
	 * 查询收获地址列表
	 * 
	 * @param syscodeid	系统唯一码
	 * @param organid	登录的人员机构（门店）id
	 * @param userid	登录人的id
	 * @return
	 */
	public List<Address> queryList(Long syscodeid, Long organid, Long userid);
	
	/**
	 * 查询收获地址列表
	 * 
	 * @param syscodeid	系统唯一码
	 * @param organid	登录的人员机构（门店）id
	 * @return
	 */
	public List<Address> queryList(Long syscodeid, Long organid);
	
	/**
	 * 将指定收货地址设置成默认
	 * 
	 * @param id	收货地址对象id
	 * @param userid	用户id
	 * @param userType	用户类型 0：个人 1：员工
	 */
	public void setupDefault(Long id, Long userid, int userType);
	
	/**
	 * 将当前员工所属机构的收货地址设置成默认
	 * @param id
	 * @param organid
	 */
	public void setupDefaultForOrgan(Long id, Long organid);
	
	/**
	 * 新增或修改收货地址（有修改默认状态的业务）
	 * 
	 * @param address
	 */
	public void saveOrUpdate(Address address);
}
